`rotor-light` is real-time platform-neutral, C++ actor micro-framework for
embedded systems with supervising capabilities.

`rotor-light` is built with the concurrency in the mind, i.e. independent
entities (actors) interact each other via messages.

`rotor-light` is adoption of [rotor](https://github.com/basiliscos/cpp-rotor)
framework for embedded systems. The framework has no platform-dependent
code, so, it can, however, be used as is on host system, if you cautiously
care about thread-safety.

## features

 - erlang-like hierarchical supervisors

 - asynchornous messaging with priorities

 - plaform-agnostic code (including timers)

 - C++17

 - no thread-safety

 - no allocations, no exceptions, no RTTI

 - non-intrusiveness

 - compile-time actor hierarchies 

## ping-pong messaging performance & binary size



|                | messages/second | binary size
|:--------------:|:---------------:|:--------------:
| host (1)       | ~48.7M          | ~26kb
| Arduino Uno R3 | ~5.2K           | ~9kb

All examples can be measured with `examples/ping-pong-throughput.cpp`,
compiled with `CMAKE_BUILD_TYPE=MinSizeRel` and the stripped

(1) Setup: Intel Core i7-8550U, Void Linux 5.15.

## license

MIT
